using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using Hostal.Bussines.Repository.Mapping;
using Hostal.Bussines.Entities;

namespace Hostal.Bussines.Repository
{
    public partial class HostalVisaContext : DbContext
    {
        static HostalVisaContext()
        {
            Database.SetInitializer<HostalVisaContext>(null);
        }

        public HostalVisaContext()
            : base("Name=HostalVisaContext")
        {
        }

        public DbSet<Boleta> Boletas { get; set; }
        public DbSet<CheckIn> CheckIn { get; set; }
        public DbSet<CheckOut> CheckOut { get; set; }
        public DbSet<DetalleBoleta> DetalleBoleta { get; set; }
        public DbSet<DetalleFactura> DetalleFactura { get; set; }
        public DbSet<DetallePedido> DetallePedidos { get; set; }
        public DbSet<DetalleReserva> DetalleReserva { get; set; }
        public DbSet<Empleado> Empleado { get; set; }
        public DbSet<Factura> Factura { get; set; }
        public DbSet<Habitacion> Habitacion { get; set; }
        public DbSet<Huesped> Huesped { get; set; }
        public DbSet<Insumo> Insumo { get; set; }
        public DbSet<Pedido> Pedido { get; set; }
        public DbSet<Proveedore> Proveedor { get; set; }
        public DbSet<Reserva> Reservas { get; set; }
        public DbSet<TipoHabitacione> TipoHabitacion { get; set; }

        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            modelBuilder.Configurations.Add(new BoletaMap());
            modelBuilder.Configurations.Add(new CheckInMap());
            modelBuilder.Configurations.Add(new CheckOutMap());
            modelBuilder.Configurations.Add(new DetalleBoletaMap());
            modelBuilder.Configurations.Add(new DetalleFacturaMap());
            modelBuilder.Configurations.Add(new DetallePedidoMap());
            modelBuilder.Configurations.Add(new DetalleReservaMap());
            modelBuilder.Configurations.Add(new EmpleadoMap());
            modelBuilder.Configurations.Add(new FacturaMap());
            modelBuilder.Configurations.Add(new HabitacionMap());
            modelBuilder.Configurations.Add(new HuespedMap());
            modelBuilder.Configurations.Add(new InsumoMap());
            modelBuilder.Configurations.Add(new PedidoMap());
            modelBuilder.Configurations.Add(new ProveedoreMap());
            modelBuilder.Configurations.Add(new ReservaMap());
            modelBuilder.Configurations.Add(new TipoHabitacioneMap());
        }
    }
}
